Skip to main content

08 编程的本质

编程的本质

Programs = Algorithms + Data Structures

Algorithm = Logic + Control

Program = Logic + Control + Data Structure


函数式编程中的 Map/Reduce/Filter,它们都是一种控制。而传给这些控制模块的那个 Lambda 表达式才是我们要解决的问题的逻辑,它们共同组成了一个算法。最后,我再把数据放在数据结构里进行处理,最终就成为了我们的程序。

  • Control 标准化:遍历数据、查找数据、多线程、并发、异步等。
  • Data Structure标准化:因为 Control 需要处理数据,所以标准化 Control,需要标准化 Data Structure,通过泛型编程来解决。
  • Control 要处理用户的业务逻辑 Logic,通过标准化接口 / 协议来实现,Control 模式可以适配于任何的 Logic。

编程范式的本质:有效地分离 Logic、Control 和 Data 是写出好程序的关键所在。